#pragma once


#define UPDATESPERSECOND 60 // max number game updates per second

class Timer
{
public :

	static unsigned int GetTimeMicroSeconds()
	{
		LARGE_INTEGER Clock;
		LARGE_INTEGER ClockFreq;

		QueryPerformanceCounter  ( &Clock ); 
		QueryPerformanceFrequency( &ClockFreq ); 

		return (unsigned int)(Clock.QuadPart / (ClockFreq.QuadPart / (1000*1000) )); // microseconds
	}

	static unsigned int GetTimeMilliSeconds()
	{
		LARGE_INTEGER Clock;
		LARGE_INTEGER ClockFreq;

		QueryPerformanceCounter  ( &Clock ); 
		QueryPerformanceFrequency( &ClockFreq ); 

		return (unsigned int)(Clock.QuadPart / (ClockFreq.QuadPart / (1000) )); // milliseconds!
	}
};